Курс по Git и Github 2017 Git - это популярная система контроля версий и совместной разработки проектов с открытым исходным кодом. С помощью Git вы сможете отслеживать изменения в исходном коде своих проектов, возвращать предыдущие версии в случае критических ошибок, а также делиться своим кодом со всеми желающими и принимать от них исправления. Контроль версий позволяет вам посмотреть изменения на любом этапе разработки, а также вернуться к любому моменту. Но это не совсем так. Изменения сохраняются в виде коммитов. По-русски - фиксация. Вы делаете начальный коммит, чтобы сохранить начальное состояние проекта, а затем для каждого изменения. Это работает как снимки состояния. Git - это мощная и сложная распределенная система контроля версий. Понимание всех возможностей Git открывает для разработчика новые горизонты в управлении исходным кодом. Плюсы Git становятся очевидны, когда работаешь над большим проектом, который уже частично работает, а часть функционала еще дорабатывается. Git очень удобен при командной работе, где каждый разработчик делает свою часть работы, каждый в своей ветке, а при объединении их работы ветки сливаются в одну и получается готовый проект. В данном курсе мы с вами рассмотрим работу с системой контроля версий git. Узнаем, как ей пользоваться, как использовать git для командной разработки. Урок 1. Git и Github. Введение. Что такое Git и Github: От автора: иногда, при разработке больших проектов, возникает необходимость вернуться в некоторое состояние проекта в прошлом. Например, вы в какой-то момент времени начали разработку некоторого функционала для сайта. Несколько дней работали над реализацией этого функционала, после чего стало понятно, что выбранное решение не подходит и нужно найти другое. В этот момент полезно «откатиться» к исходному состоянию проекта, до внесения изменений и искать другой вариант реализации. Это один из вариантов, когда нам может быть полезен git. В данном уроке мы с вами поговорим о том, что такое git и что такое github. Узнаем, как они устроены, для чего предназначены и как работают. Узнаем преимущества работы с git. Из урока у вас будет понимание того, как работать с git и как он устроен, и вы сможете определить для себя, стоит ли вам его использовать в своем проекте или проектах. Урок 2. Git и Github. Установка: От автора: перед тем, как начать использовать git его нужно установить. В данном уроке мы с вами скачаем git с официального сайта. Поскольку новые версии git выходят достаточно часто, то я рекомендую скачивать его именно с официального сайта. После, мы подробно пройдем по каждому пункта процесса установки и установим git в систему, чтобы все было готово к последующему изучения git-а. Урок 3. Git и Github. Создание репозитория: От автора: в уроке мы с вами начнем знакомиться непосредственно с самим git, а именно рассмотрим создание репозитория. Мы создадим репозиторий git, для того, чтобы мы могли создавать версии файлов и передавать их под контроль git. Так же в уроке мы настроим пользователя, для того, чтобы можно было смотреть, кто и какие именно правки вносил в файлы. Для того, чтобы вам удобнее было воспринимать уроки курса и работать с ним, я подготовил тестовый проект, с которым мы с вами на протяжении курса будем работать. Также в уроке мы узнаем, где и как посмотреть команды git или описание команд git, если они вам понадобятся. Урок 4. Git и Github. Добавление файлов: От автора: как вы уже знаете, git – это система контроля версий, которая следит за файлами нашего проекта и фиксирует изменения в файлах. Благодаря этому, мы легко можем просмотреть все изменения, которые вносились в проект. Но для того, чтобы git начал следить за изменениями в наших файлах, их нужно поместить в git репозиторий, и указ Git. Добавление файлов ать git-у отслеживать изменения. В уроке мы рассмотрим добавление файлов, а именно поместим файлы проекта в репозиторий git. А также научимся смотреть статусы git, чтобы отслеживать нахождения наших файлов в репозитории. Урок 5. Git и Github. Работа с commit: От автора: в данном уроке мы с вами будем работать с версиями файлов в git. На практике и на реальном примере посмотрим, как git наблюдает за изменениями в файлах и, как он сохраняет версии файлов. Если у вас так и не появилось полное понимание того, как устроен git и как он работает, то после этого урока, когда мы с вами научимся создавать commit, у вас будет полное понимание того, как git работает, как он устроен, и вы сможете оценить, насколько он будет для вас полезен. Урок 6. Git и Github. Репозиторий на Github: От автора: мы к данному уроку умеем размещать файлы под контроль git. Умеем создавать версии файлов, которые хранятся в репозитории git. Но этого не достаточно, если мы работаем в команде. При разработке проекта несколькими разработчиками, нужно чтобы доступ к репозиторию был у каждого разработчика. Для этого есть удаленные репозитории. В уроке мы с вами создадим удаленный репозиторий на github, для того чтобы была возможность открыть доступ к файлам проекта нескольким разработчикам. Также мы существующий проект со всеми имеющимися изменениями разместим в созданном удаленном репозитории. Урок 7. Git и Github. Коммитим в Github: От автора: на прошлом уроке мы с вами создали удаленный репозиторий на github и разместили на нем все файлы нашего проекта. Задача этого урока – научиться использовать github по своему назначению. В данном уроке мы с вами попрактикуемся и закрепим на практике всю последовательность действий, от изменения файлов, до их размещения на github. Урок 8. Git и Github. Работа в команде: От автора: к данному уроку у нас уже есть репозиторий на github. В репозитории у нас уже лежат файлы нашего проекта. Как мы уже знаем, github чаще всего используется при командной разработке. И теперь нам нужно дать доступ к данному репозиторию другим разработчикам. В уроке мы на примере рассмотрим работу двух разработчиков, которые работают над одним проектом, фалы которого находятся на github. Рассмотрим процесс клонирования проекта. И взаимодействие разработчиков друг с другом при работе с общим проектом. Урок 9. Git и Github. Ветки. Теория: От автора: очень полезная особенность git – работа с ветками. При разработке большого проекта часто возникает ситуации, когда нужно очень быстро, в основной рабочий проект добавить некоторый функционал, при этом дальнейшая доработка основного функционала должна продолжаться. В этом случае нам поможет механизм ветвления в git. Именно используя ветки, мы сможем быстро разработать новый функционал и внести его в рабочий проект, а так же учесть его в дальнейшей разработке нового функционала. В уроке мы рассмотрим теорию работы с ветками в git. На примерах разберем, в каких ситуациях и как нам могут быть полезны ветки. Урок 10. Git и Github. Создание веток: От автора: в данном уроке мы с вами на практике рассмотрим работу с ветками. Научимся создавать ветки различными способами, научимся переключаться между ветками. Поработаем с файлами из различных веток. И если у вас после теоретического урока еще остались вопросы по использованию и полезности веток, то закрепив теорию на практике, у вас будет полное понимание того, как работают ветки и как их лучше использовать. Урок 11. Git и Github. Управление ветками: От автора: в предыдущем уроке мы научились работать с ветками. Основной смысл работы с ветками в git в том, что в каждой отдельной ветке разрабатывается свой функционал. Но, как правило, с высокой долей вероятности, нужно будет по завершению разработки функционал объединить. А это означает, что созданные ветки нужно будет объединить в одну. Для объединения веток есть специальный софт, который позволяет облегчить эту задачу. Так же при объединении веток, могут возникать конфликты. Это наиболее сложные случаи, которые возникают при правках одного и того же участка кода в разных ветках. Как объединять ветки, что делать при возникновении конфликтов, какой софт установить для объединения веток – все это мы рассмотрим и научимся делать в данном уроке. Урок 12. Git и Github. Работа с логами: От автора: когда вы подключаетесь, как разработчик к какому-то уже разрабатываемому проекту, вам нужно разобраться, что происходило в проекте, что делалось, какие изменения и правки вносились в проект. Так же для своих проектов бывает нужно посмотреть и вспомнить, какие изменения вносились в проект. Это можно сделать, посмотрев лог. По-умолчанию функция log в git выдает сразу все логи в неудобном формате. В таких логах очень сложно разобраться. Но у функции log есть множество параметров, которые позволяют просматривать лог в удобном виде, так же позволяют задать свои параметры для просмотра лога. В уроке мы с вами рассмотрим использование функции log, а так же наиболее популярные параметры для этой функции, которые могут вам пригодиться.